Loading...

Project

PBR Material Editor

Parker Ford, 2024

A real-time rendering application showcasing several physically based BRDF implementations, complete with flexible lighting and material configuration options.


Features:

Physically Based BRDFs:

Includes implementations of several widely used physically based bidirectional reflectance distribution functions (BRDFs).

Lighting Support:

  • Direct Lighting: Directional lights with color, intensity, and directional controls.
  • Image Based Lighting: Prefiltered environment maps are used for computing both diffuse and specular lobes. Specular lobe is approximated using Brian Karis' Split Sum technique (see references).

User Interface:

  • Tweak understandable material properties.
  • Change lighting settings in real-time.
  • Switch between different BRDF models, meshes, textures, and environments.

Currenly Implemented Material properties:

  • Roughness
  • Reflectance
  • Diffuse Color
  • Metallic
  • Clearcoat
  • Clearcoat Gloss
  • Sheen
  • Sheen Tint
  • Subsurface

Roughness value increasing from 0-1:

pbr

Reflectance value increasing from 0-1:

pbr

Clearcoat value increasing from 0-1:

pbr

Metallic value increasing from 0-1:

pbr

Currenly Implemented Diffuse Models:

  • Lambertian
  • Hammon
  • Disney

Diffuse models (left to right) Lambertian, Hammon, Diney:

pbr

Currenly Implemented Normal Distriubtion Functions:

  • GGX
  • Beckman
  • Blinn Phong

NDFs (left to right) Blinn Phong, Beckman, GGX:

pbr

Currenly Implemented Geometry Attenuation Functions:

  • Beckman
  • GGX
  • Schlick GGX

Texture Support For:

  • Diffuse Mapping
  • Normal Mapping
  • Parallax Displacement Mapping
  • Roughness Mapping
  • Metallic Mapping

Resources:

  • Real-Time Rendering 4th Edition - Tomas Akenine-Moller et al.
  • Real Shading in Unreal Engine 4 - Brian Karis
  • Image-based Lighting (IBL) of PBR Materials - Thorsten Thormählen
  • Textures, Environments, and Mehses sources from polyhaven.com